package com.jx.jpaQuery;

import java.util.ArrayList;
import java.util.List;

/**
 * <p>查询条件
 * <p>{@link ConditionField List<ConditionField> conditions <tt>条件集合</tt>}
 * <p>{@link Integer page <tt>当前�?</tt>}
 * <p>{@link Integer rows <tt>每页大小 默认20</tt>}
 * <p>{@link String sort <tt>排序字段，要排序的对象表的属�?</tt>}
 * <p>{@link String order <tt>排序规则 desc,asc</tt>}
 * <p>{@link String defaultSort <tt>默认排序字段</tt>}
 * <p>{@link String defaultOrder <tt>默认排序规则 desc,asc</tt>}
 * <p>{@link String params <tt>参数。格式：[{name:"name",operator:"EQ",value:"value"}]</tt>}
 * <p>{@link Boolean status <tt>状�?? true表示查询有效的，false表示查询无效�?</tt>}
 * 
 * @author <h1>jiangxu2  2019�?11�?20�?</h1>
 * @version v1.11.20.2019
 * @since 1.0
 * @see #QueryCondition() 无惨构�?�函�?
 * @see #getConditionField(String) 无惨构�?�函�?
 */
public class QueryCondition {
	
	/** <p>条件集合 <p>{@link  ConditionField List<ConditionField> conditions} */
	private List<ConditionField> conditions = new ArrayList<ConditionField>();
    
	/** <p>当前�?<p>{@link  Integer page} */
    private Integer page;
    
    /** <p>每页大小<p>{@link  Integer rows} */
    private Integer rows;
    
    /** <p>排序字段<p>{@link  String sort} */
    private String sort;
    
    /** <p>排序规则<p>{@link  String order}<p>DESC,ASC */
    private String order;
    
    /** <p>默认排序字段<p>{@link  String defaultSort} */
    private String defaultSort;
    
    /** <p>默认排序规则<p>{@link  String defaultOrder}<p>DESC,ASC */
    private String defaultOrder;
    
    /** <p>参数，json格式 <p>{@link  String params}<p> [{name:"name",operator:"EQ",value:"value"}] */
    private String params;
    
    /** <p>状�??<p>{@link  Boolean status}<p>true查询有效的fase查询无效�? */
    private Boolean status;
    
    private Boolean nocondition;

	/** <p>{@link Boolean Boolean getNocondition()*/
	public Boolean getNocondition() {
		return nocondition;
	}

	/** <p>setNocondition({@link Boolean Boolean nocondition})*/
	public void setNocondition(Boolean nocondition) {
		this.nocondition = nocondition;
	}

	/** <p>{@link String String}<p>getDefaultSort()*/
	public String getDefaultSort() {
		return defaultSort;
	}
	
	/** <p>{@link Integer Integer}<p>getPage()*/
	public Integer getPage() {
		return page;
	}
	
	/** <p>{@link Integer Integer}<p>getRows()*/
	public Integer getRows() {
		return rows;
	}
	
	/** <p>{@link String String}<p>getSort()*/
	public String getSort() {
		return sort;
	}
	
	/** <p>{@link String String}<p>getOrder()*/
	public String getOrder() {
		return order;
	}
	
	/** <p>{@link String String}<p>getDefaultOrder()*/
	public String getDefaultOrder() {
		return defaultOrder;
	}
	
	/** <p>{@link Boolean Boolean}<p>getStatus()*/
	public Boolean getStatus() {
		return status;
	}
	
	/** <p>{@link String String}<p>getParams()*/
	public String getParams() {
        return params;
    }
	
	/** <p>{@link ConditionField ConditionField}<p>getConditions()*/
    public List<ConditionField> getConditions() {
        return conditions;
    }
    
    /** <p>setName({@link String name})*/
	public void setDefaultSort(String defaultSort) {
		this.defaultSort = defaultSort;
	}

	/** <p>setDefaultOrder({@link String defaultOrder})*/
	public void setDefaultOrder(String defaultOrder) {
		this.defaultOrder = defaultOrder;
	}

	/** <p>setStatus({@link Boolean status})*/
	public void setStatus(Boolean status) {
		this.status = status;
	}

	/** <p>setParams({@link String params})*/
    public void setParams(String params) {
        this.params = params;
    }

    /** <p>setConditions({@link ConditionField conditions})*/
    public void setConditions(List<ConditionField> conditions) {
        this.conditions = conditions;
    }

    /** <p>setPage({@link Integer page})*/
	public void setPage(Integer page) {
		this.page = page;
	}

	/** <p>setRows({@link Integer rows})*/
	public void setRows(Integer rows) {
		this.rows = rows;
	}

	/** <p>setSort({@link String sort})*/
	public void setSort(String sort) {
		this.sort = sort;
	}
	
	/** <p>setOrder({@link String order})*/
	public void setOrder(String order) {
		this.order = order;
	}
}
